Consistency of the EKF-SLAM Algorithm

  • Authors: Bailey, T.; Nieto, J.; Guivant, J.; Stevens, M., & Nebot, E.;
  • Venue: International Conference on Intelligent Robots and Systems
  • Year: 2006
  • Reviewed by: Joe Kershaw,

Overview

This article examines the performance of the Extended Kalman Filter(EKF) when used to solve the SLAM problem. Additional considerations were given with respect to various behaviors of a divergent filter.

Overall Problem

Though it is providing desirable results, the consistency of using EKF to solve the SLAM problem non-linearly (EKF-SLAM) has not been studied. Previous studies suggest that EKF-SLAM will become inconsistent due to a build up of errors caused by estimating both the statistical properties and derivatives of the system. This leads to two questions. The first is, does the inconsistency of the EKF-SLAM matter in all cases. Secondly, how can the EKF-SLAM produce optimal solutions.

Specific Problems

  • The first issue caused from instability is Information Gain. This is a byproduct of the linearization estimation of the statistical properties and causes the system to falsely estimate incorrect statistical values. This is in contrast to normal statistical rules where the more observations taken, the more the system converges on the real distribution.

  • The second issue is Jagged Trajectory. Though the article cannot address why this phenomena occurs, the estimated path can actually become non-continuous and have “steps” as opposed to a constant and smooth curve.

Results

  • Three different variations of the Kalman Filter and one EKF seeded with perfect Jacobians were simulated using Monte-Carlo methods. All of them displayed inconsistent behavior except for the one with the Jacobians.

  • The filters were also tested using a path finding problem with a small heading uncertainty. Though the system would diverge after a while, it was over a much longer time and was a more constant change.

Additional comments

  • The two take away points from this article are as follows. Primarily, inconsistent algorithms are not always detrimental. If the problem can be solved within the timeframe of its use, there is no reason why it cannot perform optimally or efficiently. Secondly, the true problem with the filter is that it does not give off any sort of alarm when it fails. Since it is unrelated to any truth regarding it’s performance, there is no great metric being fed back that would be observable until it has well diverged from the truth.

  • An overview of various SLAM solving algorithms were compiled in 2013 in "An Evaluation Of 2D SLAM Techniques Available In Robot Operating System". The most popular of which was Gmapping which utilized a Particle Filter. Additional algorithms tended to utilize Graph Theory based optimizers as opposed to gradient descent or Kalman Filters. This is going to likely continue as machine learning becomes more prevalent in the field.